package com.example.atomics;

import lombok.extern.slf4j.Slf4j;

import java.util.concurrent.atomic.AtomicIntegerArray;

@Slf4j
public class AtomicIntegerArrayDemo {
    public static void main(String[] args) {
        AtomicIntegerArray atomicIntegerArray = new AtomicIntegerArray(new int[5]);
        //AtomicIntegerArray atomicIntegerArray = new AtomicIntegerArray(5);
        //AtomicIntegerArray atomicIntegerArray = new AtomicIntegerArray(new int[]{1,2,3,4,5});

        for (int i = 0; i < atomicIntegerArray.length(); i++) {
            log.info("ret:{}", atomicIntegerArray.get(i));
        }
        log.info("");
        log.info("");
        log.info("");
        int tmpInt = 0;

        tmpInt = atomicIntegerArray.getAndSet(0, 1122);
        log.info("ret:{},{}", tmpInt, atomicIntegerArray.get(0));
        atomicIntegerArray.getAndIncrement(1);
        atomicIntegerArray.getAndIncrement(1);
        tmpInt = atomicIntegerArray.getAndIncrement(1);
        log.info("ret:{},{}", tmpInt, atomicIntegerArray.get(1));

    }
}
